package com.ruoyi.travel.domain;

import java.math.BigDecimal;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

public class TravelSchedule extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long scheduleId;

    /** 行程单号 自动生成一串字符串 xc+时间戳毫秒+四位随机数 */
    @Excel(name = "行程单号 自动生成一串字符串 xc+时间戳毫秒+四位随机数")
    private String scheduleNumber;

    /** 咨询表id */
    @Excel(name = "咨询表id")
    private Long consultId;

    /** 地陪id sys_user表的id */
    @Excel(name = "地陪id sys_user表的id")
    private Long guideId;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 逻辑删除1表示删除，0表示未删除 */
    @Excel(name = "逻辑删除1表示删除，0表示未删除")
    private Integer isDeleted;

    /** 旅行费用总计 */
    @Excel(name = "旅行费用总计")
    private BigDecimal travelMoneyTotal;

    /** 服务费用总计 */
    @Excel(name = "服务费用总计")
    private BigDecimal serviceMoneyTotal;

    /** 费用总计 */
    @Excel(name = "费用总计")
    private BigDecimal moneyTotal;

    private TravelConsult travelConsult;
    private TravelClient travelClient;

    private List<TravelScheduleContent> travelScheduleContent;

    private Long clientId;

    private Long userId;//当前登录的用户id，数据库表里面没有，但是写在对象里面为了写方法方便。
    private String userRoleName;//当前登录用户的角色是定制师还是什么，数据库表里面没有，但是写在对象里面为了写方法方便。


    public String getUserRoleName() {
        return userRoleName;
    }

    public void setUserRoleName(String userRoleName) {
        this.userRoleName = userRoleName;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public List<TravelScheduleContent> getTravelScheduleContent() {
        return travelScheduleContent;
    }

    public void setTravelScheduleContent(List<TravelScheduleContent> travelScheduleContent) {
        this.travelScheduleContent = travelScheduleContent;
    }

    public Long getClientId() {
        return clientId;
    }

    public void setClientId(Long clientId) {
        this.clientId = clientId;
    }


    public TravelClient getTravelClient() {
        return travelClient;
    }

    public void setTravelClient(TravelClient travelClient) {
        this.travelClient = travelClient;
    }


    public TravelConsult getTravelConsult() {
        return travelConsult;
    }

    public void setTravelConsult(TravelConsult travelConsult) {
        this.travelConsult = travelConsult;
    }

    public void setScheduleId(Long scheduleId)
    {
        this.scheduleId = scheduleId;
    }

    public Long getScheduleId()
    {
        return scheduleId;
    }
    public void setScheduleNumber(String scheduleNumber)
    {
        this.scheduleNumber = scheduleNumber;
    }

    public String getScheduleNumber()
    {
        return scheduleNumber;
    }
    public void setConsultId(Long consultId)
    {
        this.consultId = consultId;
    }

    public Long getConsultId()
    {
        return consultId;
    }
    public void setGuideId(Long guideId)
    {
        this.guideId = guideId;
    }

    public Long getGuideId()
    {
        return guideId;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setIsDeleted(Integer isDeleted)
    {
        this.isDeleted = isDeleted;
    }

    public Integer getIsDeleted()
    {
        return isDeleted;
    }
    public void setTravelMoneyTotal(BigDecimal travelMoneyTotal)
    {
        this.travelMoneyTotal = travelMoneyTotal;
    }

    public BigDecimal getTravelMoneyTotal()
    {
        return travelMoneyTotal;
    }
    public void setServiceMoneyTotal(BigDecimal serviceMoneyTotal)
    {
        this.serviceMoneyTotal = serviceMoneyTotal;
    }

    public BigDecimal getServiceMoneyTotal()
    {
        return serviceMoneyTotal;
    }
    public void setMoneyTotal(BigDecimal moneyTotal)
    {
        this.moneyTotal = moneyTotal;
    }

    public BigDecimal getMoneyTotal()
    {
        return moneyTotal;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("scheduleId", getScheduleId())
            .append("scheduleNumber", getScheduleNumber())
            .append("consultId", getConsultId())
            .append("guideId", getGuideId())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("isDeleted", getIsDeleted())
            .append("travelMoneyTotal", getTravelMoneyTotal())
            .append("serviceMoneyTotal", getServiceMoneyTotal())
            .append("moneyTotal", getMoneyTotal())
            .append("travelConsult",getTravelConsult())
                .append("travelClient", getTravelClient())
                .append("clientId", getClientId())
                .append("travelScheduleContent",getTravelScheduleContent())
                .append("userId",getUserId())
                .append("userRoleName",getUserRoleName())
                .toString();
    }
}
